package powerup;

import javax.swing.JLabel;
import nivel.Casillero;
import nivel.Nivel;

/**
 * Clase que modela una Bomba
 * 
 * @author Agustin Orge (LU.85538)
 * @author Victoria Martinez de la Cruz (LU.87620)
 */
public class Bomba extends PowerUp {

	/**
	 * Constructor de la clase Bomba
	 * 
	 * @param n
	 *            nivel con el cual Bomba esta en relacion
	 * @param ca
	 *            casillero actual
	 */
	public Bomba(Nivel n, Casillero ca) {
		super(n);
		casilleroActual = ca;
		label = new JLabel(nivel.getGrafica().getPanelEntidades().getIconos()
				.getBomba());
		label.setSize(16, 16);
		label.setLocation(casilleroActual.getX(), casilleroActual.getY());
	}

	/**
	 * Cuando Mario agarra una Bomba, todos los enemigos que se encuentran en la
	 * pantalla mueren. Se restaran 45 puntos al puntaje.
	 */
	@Override
	public void agarrar() {
		nivel.getDirectorEnemigos().tickBomba(casilleroActual.getCoordenada());
		nivel.getGrafica().getPanelEntidades().eliminarEntidad(label);
		nivel.getTablero().eliminarDelTablero(casilleroActual.getCoordenada());
		nivel.getScore().modificarPuntaje(-45);
	}

	/**
	 * La bomba sale de la caja y se activa
	 */
	@Override
	public void activar() {
		super.activar();
		nivel.getTablero().agregarAlTablero(casilleroActual);
	}

}
